Release 10.1A: OpenEdge Development:
Progress Dynamics Administration


Keeping dynamic frames alive on the client

When a user selects and deselects (opens and closes) the node associated with a dynamic container, Progress Dynamics manages the frame’s resources differently depending on certain session and object settings. So, Dynamics can manage a dynamic frame using one of two mechanisms:

  1. Create the dynamic frame each time the user opens it, then destroy the frame each time the user closes it. With this mechanism, Dynamics incurs the performance overhead of creating and destroying the frame with each use, but allocates a minimum of memory to manage all dynamic frames in a session.
  2. Create the dynamic frame the first time the user opens it, then hide (keep alive) the frame each time the user closes it. With this mechanism, Dynamics eliminates the performance overhead of creating and destroying the frame with each use, but allocates additional memory with each dynamic frame that it keeps alive.
Properties to manage dynamic frame memory

Dynamics provides the session property, MaxHiddenContainers, for you to specify how you want Dynamics to manage the memory resources for dynamic frames used by a given dynamic TreeView instance. To manage these resources, Dynamics uses this property together with the HideOnClose and HideChildContainersOnClose attributes on dynamic frames and dynamic TreeViews.

If you set MaxHiddenContainers to a value greater than 0 (zero), Dynamics creates a hidden frame list of up to n frames in each TreeView that it runs in a session, then displays and hides these frames each time a user opens and closes them. Any additional frames opened by the user replace the least recently used frame in the list.

If you set the value to 0 (zero), to the Unknown value (?), or you do not specify the property at all for a session type, Dynamics maintains no hidden dynamic frames, but instead creates each frame when the user opens it (selects a TreeView node that displays the frame) and destroys each frame when the user closes it (selects another TreeView node to display a different frame).

Configuring dynamic frame memory use

Starting with Progress Dynamics Version 2.1A, Dynamics predefines the MaxHiddenContainers property for all run-time client sessions with a default value of 10. You can use the Session Type Maintenance tool to change this value for any session type, or add the property to run-time sessions when upgrading from a previous version, then add it to your Dynamics configuration .xml file (icfconfig.xml) by generating a new configuration file.

In the configuration file, an entry appears for each session type like this (using the default value):

<MaxHiddenContainers>10</MaxHiddenContainers> 

Note: A dynamic TreeView can potentially have many dynamic frames running in a session, which can consume large amounts of memory. Before setting a relatively high value for this property, make sure that each client machine that runs a given session type can handle the specified maximum number of hidden frames.


Copyright © 2005 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095